package com.jack.collection;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * Created by zhang_j on 2019/11/28
 * Iterator是一个接口，它的工作就是遍历并选择序列中的对象，它提供了一种方式去访问容器对象中的各个元素，而不必暴露该对象内部细节的方法。
 *      由于创建迭代器的代价非常小，所以迭代器也通常被称为轻量级的容器。
 *
 * Iterator和ListIterator
 *      Iterator可用来便利set和list集合，但是listiterator只能用了便利list
 *      listiterator有add方法，iterator没有
 *      listiterator有hasPrevioud方法，可以实现顺序向前遍历
 *      listiterator有nextIndex和previousIndex方法，可以实现定位当前索引位置
 *      都可以实现删除对象，但是listiterator可以使用set方法进行修改
 */
public class IteratorAndListIterator {

    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        Iterator<String> iterator = list.iterator();
        Iterator<String> listIterator = list.listIterator();
    }

    public void arrayTest(){
        int a = -1;
        int b = 1;
        int[] arr = new int[4];
        System.out.println(arr[a=b]);
    }
}
